#pragma once

// tables used  in special canonical on  on pattern process
// work on solution grids
// work on 17 clues puzzles (search)
#include "tab0.h"

extern int tmax3[8]; // minirow max pattern 
extern int tmin3[8]; // minirow min pattern
extern int maxminirow[512];
extern int tmax9[512]; // computed table max equivalent to a pattern for row1
extern int with_hole[512];


extern int tmin9[512]; // computed table to switch to minilex (in a box for magic40)
extern byte tcrossperms[64][72]; //  perms 2 minirows minlex 
extern byte tpermsminir1[8][6];  // perms to order box1 on minlex cross 
extern int tpermorder[1296][9];
extern word trowperms[512][1296]; // table of all row possible perms
//extern byte tmax9order[512][9]; //same, giving the permutation used 



// minlex starts and gangsters
extern char * t16[416];
extern char * t44gang[44];
extern word t416to44[416];
// magic 50
extern word tmagicbox1[12];
extern word tmagic40[50][5];
extern byte patnumber[50];
extern byte boxes_5 [9][5];
extern int tpat40_sort[50][3];

